﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Grafo;
using System.Collections;

namespace Modelo
{
   public class Ruta
    {
        private string _id;
        private string _nombre;        
        private List<String> _paradasIda;
        private List<String> _paradasVuelta;
        private Grafo<Estacion> _grafoParadas;

        public Ruta(string id, string nombre, List<String> paradasIda, List<String> paradasVuelta, Grafo<Estacion> estaciones)
        {
            _id = id;
            _nombre = nombre;
            _paradasIda = paradasIda;
            _paradasVuelta = paradasVuelta;
            _grafoParadas = estaciones;
        }

        public string darId()
        {
            return _id;
        }

        public string darNombre()
        {
            return _nombre;
        }

        public List<string> darListaRecorridoIda()
        {

            return _paradasIda;
        }

        public List<string> darListaRecorridoVuelta()
        {
            return _paradasVuelta;
        }

        public Grafo<Estacion> darGrafoParadas()
        {
            return _grafoParadas;
        }

       //Este metodo retorna la estacion buscada
        public Estacion darEstacion(string est)
        {
           List<Estacion> estacions=_grafoParadas.darVertices();
           foreach (Estacion e in estacions)
           {
               if (e.darNombre().Equals(est))
               {
                   return e;
               }
            }
           return null;
        }

    }
}
